Neighbourhood components analysis